/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package appletthreatr;

import java.applet.Applet;
import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics;
import java.text.SimpleDateFormat;
import java.util.Calendar;


/**
 *
 * @author julita
 */
public class Reloj extends Applet implements Runnable {
    private Thread hilo;
    private Font fuente; // tipo de letra para la hora
    private String horaAct;
            
    /**
     * Initialization method that will be called after the applet is loaded into
     * the browser.
     */
    @Override
    public void init() {
       fuente = new Font("Verdana", Font.BOLD,26);
       horaAct = sHoraAct();
       
    }
private String sHoraAct(){
    return new SimpleDateFormat("HH:MM:ss").format(Calendar.getInstance().getTime());
        //desgloasdo sería:
//    SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");
//    Calendar cal = Calendar.getInstance();
//    horaAct = sdf.format(cal.getTime());
//    return horaAct;
}
    /**
     * Inicializa el hilo la primera vez y cada vez que se haya matado
     * y por último lo lanza
     */
    @Override
    public void start() {
        if(hilo==null){
            hilo = new Thread(this);
            hilo.start();
        }
    }
    @Override
    public void stop() {
      hilo=null;
    }
    @Override
    public void paint(Graphics g) {
        //Borra el rectángulo especificado, rellenandolo con un color de fondo
        g.clearRect(1, 1, getSize().width, getSize().height);
        setBackground(Color.yellow); //establece color de fondo
        g.setFont(fuente);   // establece  la fuente
        g.drawString(horaAct, 20, 50); //pinta el texto en la posición en pizels sup-izqda
    }

    @Override
    public void run() {
        Thread hiloEnProceso = Thread.currentThread();
        while(hilo == hiloEnProceso){
            horaAct= sHoraAct();
            repaint();
            try {
                Thread.sleep(1000);
            } catch (InterruptedException ex) {
                
            }
        }
    }
}
